package com.lb.bs.client.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * program: LB-BS-Client
 * author: bsworld.xie
 * create: 2019-11-27 10:31
 * description:
 * 标识属性相关
 */
@Retention(value = RetentionPolicy.RUNTIME)
@Target(value = ElementType.METHOD)
public @interface LBItem {
    /**
     *
     * 节点子路径
     *
     * */
    String key() default "";
    /**
     *
     * 默认值
     *
     * 如果不写，包装类，默认为空，基础类型默认0，false
     *
     * */
    String value() default "";
    /**
     *
     * 关联的filed名称
     *如果该方法是ide自动生成的,以get或者is开头，可以不写
     * */
    String associateField() default "";
    /**
     * 标识该节点是否是日志节点
     * 若是:
     *      1）在该节点变更的时候会同步变更日志级别,
     *      2）日志以远程日志级别和本地log4j配置的日志级别为准
     *         默认值对日志级别不起作用，可以不配置
     *
     * */
    boolean isLogPath() default false;
}
